﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Frame;
using Estrutura;
using Banco;

public partial class Cadastros_Turma_cadastro : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if(!IsPostBack)
        {
            if (!string.IsNullOrEmpty(Request.QueryString["operacao"]))
                hid_operacao.Value = Request.QueryString["operacao"];

            if (hid_operacao.Value == "edit")
            {
                if (!string.IsNullOrEmpty(Request.QueryString["TURMA_ID"]))
                {
                    turma_id.Text = Request.QueryString["TURMA_ID"];
                    carregarTurma(turma_id.Text);
                    tur_dtcriacao.ReadOnly = true;
                }
            }
            else if (hid_operacao.Value == "insert")
            {
                turma_id.Text = "NEW";
                tur_dtcriacao.ReadOnly = false;
                tur_dtcriacao.SelectedDate = System.DateTime.Now;
            }

            tur_descricao.Focus();
        }
    }

    public void carregarTurma(string TURMA_ID)
    {
        ES_Turma turma = new BD_Turma()._obter_Turma_by_id(TURMA_ID);
        if (!string.IsNullOrEmpty(turma.MODALIDADE_ID))
        {
            modalidade_id.DataSourceID = ods_Modalidade.ID;
            modalidade_id.DataBind();
            modalidade_id.SelectedValue = turma.MODALIDADE_ID;
        }
        if (!string.IsNullOrEmpty(turma.SALA_ID))
        {
            sala_id.DataSourceID = ods_Sala.ID;
            sala_id.DataBind();
            sala_id.SelectedValue = turma.SALA_ID;
        }
        if (!string.IsNullOrEmpty(turma.TURNO_ID))
        {
            turno_id.DataSourceID = ods_Turno.ID;
            turno_id.DataBind();
            turno_id.SelectedValue = turma.TURNO_ID;
        }
        if (!string.IsNullOrEmpty(turma.NIVEL_ID))
        {
            nivel_id.DataSourceID = ods_Nivel.ID;
            nivel_id.DataBind();
            nivel_id.SelectedValue = turma.NIVEL_ID;
        }
        if (!string.IsNullOrEmpty(turma.USUARIO_ID))
        {
            usuario_id.DataSourceID = ods_Professor.ID;
            usuario_id.DataBind();
            usuario_id.SelectedValue = turma.USUARIO_ID;
        }
        if (!string.IsNullOrEmpty(turma.TUR_MODALIDACOBRANCA))
            tur_modalidacobranca.SelectedValue = turma.TUR_MODALIDACOBRANCA;

        tur_descricao.Text = turma.TUR_DESCRICAO;
        if (!string.IsNullOrEmpty(turma.TUR_DTCRIACAO))
            tur_dtcriacao.SelectedDate = Convert.ToDateTime(turma.TUR_DTCRIACAO);
        if (!string.IsNullOrEmpty(turma.TUR_DTFORMACAO))
            tur_dtformacao.SelectedDate = Convert.ToDateTime(turma.TUR_DTFORMACAO);
        if (!string.IsNullOrEmpty(turma.TUR_DTFECHAMENTO))
            tur_dtfechamento.SelectedDate = Convert.ToDateTime(turma.TUR_DTFECHAMENTO);        
        if(string.IsNullOrEmpty(turma.TUR_MODALIDACOBRANCA))
            tur_modalidacobranca.SelectedValue = turma.TUR_MODALIDACOBRANCA;
        tur_qtmensalidades.Text = turma.TUR_QTMENSALIDADES;
        tur_stexcluido.Checked = turma.TUR_STEXCLUIDO;
        if (tur_stexcluido.Checked)
        {
            lbl_tur_stexcluido.ForeColor = System.Drawing.Color.Red;
        }

        tur_valorreferencia.Text = turma.TUR_VALORREFERENCIA;
    }

    protected void ods_Modalidade_Selecting(object sender, ObjectDataSourceSelectingEventArgs e)
    {
        //Ao inserir uma nova turma, só trazer registros ativos
        if (hid_operacao.Value == "insert")
            e.InputParameters["MOD_EXCLUIDO"] = "0";
    }
    protected void ods_Sala_Selecting(object sender, ObjectDataSourceSelectingEventArgs e)
    {
        //Ao inserir uma nova turma, só trazer registros ativos
        if (hid_operacao.Value == "insert")
            e.InputParameters["SAL_EXCLUIDO"] = "0";
    }
    protected void ods_Turno_Selecting(object sender, ObjectDataSourceSelectingEventArgs e)
    {
        //Ao inserir uma nova turma, só trazer registros ativos
        if (hid_operacao.Value == "insert")
            e.InputParameters["TUR_EXLUIDO"] = "0";
    }
    protected void ods_Nivel_Selecting(object sender, ObjectDataSourceSelectingEventArgs e)
    {
        //Ao inserir uma nova turma, só trazer registros ativos
        if (hid_operacao.Value == "insert")
            e.InputParameters["ST_EXCLUIDO"] = "0";
        
    }
    protected void modalidade_id_ItemsRequested(object o, Telerik.Web.UI.RadComboBoxItemsRequestedEventArgs e)
    {
        modalidade_id.DataSourceID = ods_Modalidade.ID;
        modalidade_id.DataBind();
    }
    protected void sala_id_ItemsRequested(object o, Telerik.Web.UI.RadComboBoxItemsRequestedEventArgs e)
    {
        sala_id.DataSourceID = ods_Sala.ID;
        sala_id.DataBind();
    }
    protected void turno_id_ItemsRequested(object o, Telerik.Web.UI.RadComboBoxItemsRequestedEventArgs e)
    {
        turno_id.DataSourceID = ods_Turno.ID;
        turno_id.DataBind();
    }
    protected void nivel_id_ItemsRequested(object o, Telerik.Web.UI.RadComboBoxItemsRequestedEventArgs e)
    {
        nivel_id.DataSourceID = ods_Nivel.ID;
        nivel_id.DataBind();
    }
    protected void imgbConfirmarDadosCad_Click(object sender, ImageClickEventArgs e)
    {
        if (hid_operacao.Value == "edit")
        {
            new BD_Turma()._atualizar_Turma(turma_id.Text,
                                            modalidade_id.SelectedValue,
                                            sala_id.SelectedValue,
                                            turno_id.SelectedValue,
                                            turno_alter_id.SelectedValue,
                                            nivel_id.SelectedValue,
                                            usuario_id.SelectedValue,
                                            tur_descricao.Text,
                                            tur_dtcriacao.SelectedDate.ToString(),
                                            tur_dtformacao.SelectedDate.ToString(),
                                            tur_dtfechamento.SelectedDate.ToString(),
                                            tur_modalidacobranca.SelectedValue,
                                            tur_qtmensalidades.Text,
                                            tur_valorreferencia.Text,
                                            (tur_stexcluido.Checked == true)? "1" : "0");
                    
        }
        else if (hid_operacao.Value == "insert")
        {
            new BD_Turma()._inserir_Turma(  turma_id.Text,
                                            modalidade_id.SelectedValue,
                                            sala_id.SelectedValue,
                                            turno_id.SelectedValue,
                                            turno_alter_id.SelectedValue,
                                            nivel_id.SelectedValue,
                                            usuario_id.SelectedValue,
                                            tur_descricao.Text,
                                            tur_dtcriacao.SelectedDate.ToString(),
                                            tur_dtformacao.SelectedDate.ToString(),
                                            tur_dtfechamento.SelectedDate.ToString(),
                                            tur_modalidacobranca.SelectedValue,
                                            tur_qtmensalidades.Text,
                                            tur_valorreferencia.Text,
                                            (tur_stexcluido.Checked == true) ? "1" : "0");
            
        }
        
        ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "scriptAjax", "Close();", true);
    }
    protected void tur_dtcriacao_TextChanged(object sender, EventArgs e)
    {

    }

    protected void ods_Professor_Selecting(object sender, ObjectDataSourceSelectingEventArgs e)
    {
        e.InputParameters["USUARIO_TIPO_ID"] = "2";
        e.InputParameters["USU_STEXCLUIDO"] = "0";
    }
    protected void usuario_id_ItemsRequested(object o, Telerik.Web.UI.RadComboBoxItemsRequestedEventArgs e)
    {
        usuario_id.DataSourceID = ods_Professor.ID;
        usuario_id.DataBind();
    }
    protected void turno_alter_id_ItemsRequested(object o, Telerik.Web.UI.RadComboBoxItemsRequestedEventArgs e)
    {
        turno_alter_id.DataSourceID = ods_Turno.ID;
        turno_alter_id.DataBind();
    }
}